#ifndef CALSPEC_H
#define CALSPEC_H

#include "generatefreqaxis.h"

class CalSpec
{
public:
    CalSpec(const double * specdata,const unsigned int nRangeBins,const unsigned int SpecPointsinWIND,\
            const unsigned int objSpecPoints,const double lambda,const double sampleFreq,\
            const double aomFreq);
    ~CalSpec();
    double * getsnr();
    double * getdenoiseSpec();
    double * getLosVelocity();

private:
    void Denoise();
    void Cal_snr_center();
    void Findborder();
    void Cal_losVelocity();

    int aomIndex;
    int aomRange;
    int noise_count;
    double aomFreq;
    const double * specdata;
    double * denoiseSpec;
    double * noise_avg;
    double * centerposition;
    double * leftposition;
    double * rightPosition;
    double * snr;
    double * losvelocity;
    unsigned int nRangeBins;
    unsigned int SpecPointsinWIND;
    unsigned int objSpecPoints;
    double lambda;
    double sampleFreq;
};

#endif // CALSPEC_H
